package drds.configuration.db.table_mapping;


import java.util.List;
import java.util.Map;
import java.util.Set;


public abstract class Sql {
    /**
     * select * from tableName.用于获取数据库所有的字段信息
     */
    public abstract String buildSqlForTableInfo(String tableName);


    // 获取插入数据后的主键值
    public abstract boolean isSupportAutoIncrementKey();

    public abstract void save(TableInfo tableInfo, Map<String, Object> attributeMap, StringBuilder sql, List<Object> parameterList);


    public abstract void update(TableInfo tableInfo, Map<String, Object> attributeMap, Set<String> modifyFlag, String primaryKey, Object id, StringBuilder sql, List<Object> parameterList);


    public abstract String deleteById(TableInfo tableInfo);


    public abstract String findById(TableInfo tableInfo, String columns);

    // 暂时不支持分页

}
